package com.dao;

import org.mybatis.spring.annotation.MapperScan;

import java.util.List;
import java.util.Map;

/**
 * 基础数据接口
 * @param <E> 实体类
 * @param <Vo> 实体类对应的Vo
 */
@MapperScan("com.dao")
public interface BaseMapper<E, Vo> {

    int insert(E e);
    int delete(E e);
    int update(E e);
    List<Vo> select(E e);
    /** 查(入参为实体) */
    List<E> selectEntity(E e);
    /** 假删 */
    int fakeDelete(Vo vo);
    /** 增主表 */
    int insertMain(E e);

    int selectCount(Map<String, Object> map);
    List<Vo> selectByPage(Map<String, Object> map);
}
